var runtime.trace
151 uses
runtime (current package)
trace.go#L133: var trace struct {
trace.go#L223: lockInit(&trace.bufLock, lockRankTraceBuf)
trace.go#L224: lockInit(&trace.stringsLock, lockRankTraceStrings)
trace.go#L225: lockInit(&trace.lock, lockRankTrace)
trace.go#L226: lockInit(&trace.stackTab.lock, lockRankTraceStackTab)
trace.go#L263: return trace.enabled
trace.go#L270: return trace.shutdown
trace.go#L294: lock(&trace.bufLock)
trace.go#L296: if trace.enabled || trace.shutdown {
trace.go#L297: unlock(&trace.bufLock)
trace.go#L318: trace.cpuLogRead = profBuf
trace.go#L327: atomicstorep(unsafe.Pointer(&trace.cpuLogWrite), unsafe.Pointer(profBuf))
trace.go#L336: id := trace.stackTab.put([]uintptr{logicalStackSentinel, startPCforTrace(gp.startpc) + sys.PCQuantum})
trace.go#L355: id := trace.stackTab.put([]uintptr{logicalStackSentinel, startPCforTrace(0) + sys.PCQuantum}) // no start pc
trace.go#L376: trace.startTime = traceClockNow()
trace.go#L377: trace.startTicks = cputicks()
trace.go#L378: trace.startNanotime = nanotime()
trace.go#L379: trace.headerWritten = false
trace.go#L380: trace.footerWritten = false
trace.go#L385: trace.stringSeq = 0
trace.go#L386: trace.strings = make(map[string]uint64)
trace.go#L388: trace.seqGC = 0
trace.go#L390: trace.enabled = true
trace.go#L395: trace.markWorkerLabels[i], bufp = traceString(bufp, pid, label)
trace.go#L399: unlock(&trace.bufLock)
trace.go#L421: lock(&trace.bufLock)
trace.go#L423: if !trace.enabled {
trace.go#L424: unlock(&trace.bufLock)
trace.go#L432: atomicstorep(unsafe.Pointer(&trace.cpuLogWrite), nil)
trace.go#L433: trace.cpuLogRead.close()
trace.go#L445: if trace.buf != 0 {
trace.go#L446: buf := trace.buf
trace.go#L447: trace.buf = 0
trace.go#L452: if trace.cpuLogBuf != 0 {
trace.go#L453: buf := trace.cpuLogBuf
trace.go#L454: trace.cpuLogBuf = 0
trace.go#L466: trace.endTime = traceClockNow()
trace.go#L467: trace.endTicks = cputicks()
trace.go#L468: trace.endNanotime = nanotime()
trace.go#L470: if trace.endNanotime != trace.startNanotime || faketime != 0 {
trace.go#L476: trace.enabled = false
trace.go#L477: trace.shutdown = true
trace.go#L478: unlock(&trace.bufLock)
trace.go#L486: semacquire(&trace.shutdownSema)
trace.go#L488: raceacquire(unsafe.Pointer(&trace.shutdownSema))
trace.go#L493: lock(&trace.lock)
trace.go#L499: if trace.buf != 0 {
trace.go#L502: if trace.fullHead != 0 || trace.fullTail != 0 {
trace.go#L505: if trace.reading != 0 || trace.reader.Load() != nil {
trace.go#L508: for trace.empty != 0 {
trace.go#L509: buf := trace.empty
trace.go#L510: trace.empty = buf.ptr().link
trace.go#L513: trace.strings = nil
trace.go#L514: trace.shutdown = false
trace.go#L515: trace.cpuLogRead = nil
trace.go#L516: unlock(&trace.lock)
trace.go#L534: if !trace.reader.CompareAndSwapNoWB(nil, gp) {
trace.go#L579: if !trace.footerWritten && !trace.shutdown {
trace.go#L586: lock(&trace.lock)
trace.go#L588: if trace.reader.Load() != nil {
trace.go#L592: unlock(&trace.lock)
trace.go#L597: if buf := trace.reading; buf != 0 {
trace.go#L598: buf.ptr().link = trace.empty
trace.go#L599: trace.empty = buf
trace.go#L600: trace.reading = 0
trace.go#L603: if !trace.headerWritten {
trace.go#L604: trace.headerWritten = true
trace.go#L605: unlock(&trace.lock)
trace.go#L609: if trace.fullHead == 0 && !trace.shutdown {
trace.go#L613: unlock(&trace.lock)
trace.go#L617: assertLockHeld(&trace.lock)
trace.go#L619: if trace.fullHead != 0 {
trace.go#L621: trace.reading = buf
trace.go#L622: unlock(&trace.lock)
trace.go#L627: if !trace.footerWritten {
trace.go#L628: trace.footerWritten = true
trace.go#L629: freq := (float64(trace.endTicks-trace.startTicks) / traceTimeDiv) / (float64(trace.endNanotime-trace.startNanotime) / 1e9)
trace.go#L633: unlock(&trace.lock)
trace.go#L644: bufp = trace.stackTab.dump(bufp)
trace.go#L647: lock(&trace.lock)
trace.go#L652: if trace.shutdown {
trace.go#L653: unlock(&trace.lock)
trace.go#L658: racerelease(unsafe.Pointer(&trace.shutdownSema))
trace.go#L661: semrelease(&trace.shutdownSema)
trace.go#L665: unlock(&trace.lock)
trace.go#L681: lock(&trace.lock)
trace.go#L683: if gp == nil || !trace.reader.CompareAndSwapNoWB(gp, nil) {
trace.go#L684: unlock(&trace.lock)
trace.go#L687: unlock(&trace.lock)
trace.go#L695: if trace.fullHead != 0 || trace.shutdown {
trace.go#L696: return trace.reader.Load()
trace.go#L712: lock(&trace.lock)
trace.go#L714: unlock(&trace.lock)
trace.go#L720: if trace.fullHead == 0 {
trace.go#L721: trace.fullHead = buf
trace.go#L723: trace.fullTail.ptr().link = buf
trace.go#L725: trace.fullTail = buf
trace.go#L730: buf := trace.fullHead
trace.go#L734: trace.fullHead = buf.ptr().link
trace.go#L735: if trace.fullHead == 0 {
trace.go#L736: trace.fullTail = 0
trace.go#L760: if !trace.enabled && !mp.trace.startingTrace {
trace.go#L850: if !trace.enabled {
trace.go#L875: for !trace.signalLock.CompareAndSwap(0, 1) {
trace.go#L880: if log := (*profBuf)(atomic.Loadp(unsafe.Pointer(&trace.cpuLogWrite))); log != nil {
trace.go#L887: trace.signalLock.Store(0)
trace.go#L891: bufp := &trace.cpuLogBuf
trace.go#L894: data, tags, _ := trace.cpuLogRead.read(profBufNonBlocking)
trace.go#L945: stackID := trace.stackTab.put(buf.stk[:nstk])
trace.go#L1000: id := trace.stackTab.put(pcBuf[:nstk])
trace.go#L1036: lock(&trace.bufLock)
trace.go#L1037: return mp, traceGlobProc, &trace.buf
trace.go#L1043: unlock(&trace.bufLock)
trace.go#L1051: lockWithRankMayAcquire(&trace.lock, getLockRank(&trace.lock))
trace.go#L1060: lock(&trace.lock)
trace.go#L1064: if trace.empty != 0 {
trace.go#L1065: buf = trace.empty
trace.go#L1066: trace.empty = buf.ptr().link
trace.go#L1087: unlock(&trace.lock)
trace.go#L1097: lock(&trace.stringsLock)
trace.go#L1101: raceacquire(unsafe.Pointer(&trace.stringsLock))
trace.go#L1104: if id, ok := trace.strings[s]; ok {
trace.go#L1106: racerelease(unsafe.Pointer(&trace.stringsLock))
trace.go#L1108: unlock(&trace.stringsLock)
trace.go#L1113: trace.stringSeq++
trace.go#L1114: id := trace.stringSeq
trace.go#L1115: trace.strings[s] = id
trace.go#L1118: racerelease(unsafe.Pointer(&trace.stringsLock))
trace.go#L1120: unlock(&trace.stringsLock)
trace.go#L1499: traceEvent(traceEvGCStart, 3, trace.seqGC)
trace.go#L1500: trace.seqGC++
trace.go#L1578: id := trace.stackTab.put([]uintptr{logicalStackSentinel, startPCforTrace(pc) + sys.PCQuantum})
trace.go#L1587: traceEvent(traceEvGoStartLabel, -1, gp.goid, gp.trace.seq, trace.markWorkerLabels[pp.ptr().gcMarkWorkerMode])
trace.go#L1659: if ts != 0 && ts < trace.startTime {
trace.go#L1707: if !trace.enabled {
trace.go#L1713: if !trace.enabled && !mp.trace.startingTrace {
trace.go#L1730: if !trace.enabled {
trace.go#L1735: if !trace.enabled && !mp.trace.startingTrace {
trace.go#L1747: if !trace.enabled {
trace.go#L1752: if !trace.enabled && !mp.trace.startingTrace {
|
The pages are generated with Golds v0.6.7. (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu.
PR and bug reports are welcome and can be submitted to the issue list.
Please follow @Go100and1 (reachable from the left QR code) to get the latest news of Golds. |